package http_work_flow

import (
	"fmt"
)

type PassInfo struct {
	AppId    string `json:"AppId"`
	DeviceId string `json:"DeviceId"`
	IdScheme int    `json:"IdScheme"`
	// IdRecScheme     string      `json:"IdRecScheme"`
	ImageRate       int         `json:"ImageRate"`       //抽图率
	TimeImageUnixms int64       `json:"TimeImageUnixms"` //抽图时间戳毫秒
	Subscribes      []Subscribe `json:"Subscribe"`       //与之关联的子订阅ID，透传字段
}

// 与之关联的订阅信息集，透传结构
type Subscribe struct {
	IdSubscribe    int64 `json:"IdSubscribe"`    //与之关联的订阅ID，透传字段
	IdRecSubscribe int64 `json:"IdRecSubscribe"` //与之关联的子订阅ID，透传字段
}

func (t *PassInfo) GetKeySub() string {
	if t.AppId == "" {
		return fmt.Sprintf("%s_%d", t.DeviceId, t.IdScheme)
	}
	return fmt.Sprintf("%s_%s_%d", t.AppId, t.DeviceId, t.IdScheme)
}
